package cn.juque.lucenecandy.core.datasync;

import cn.juque.lucenecandy.bo.IndexUpdateParamBO;

import javax.validation.constraints.NotNull;

/**
 * @author juque
 * @version 1.0.0
 * <ul>
 *     <li>IDataSyncService</li>
 * </ul>
 * @date 2023-12-29
 **/
public interface IDataSyncService {

    /**
     * 更新
     *
     * @param param 数据
     */
    void commit(@NotNull IndexUpdateParamBO param);

    /**
     * 删除
     *
     * @param param 数据
     */
    void cancel(@NotNull IndexUpdateParamBO param);

    enum SyncTypeEnum {
        /**
         * ENUM
         */
        PRE,
        COMMIT,
        CANCEL;
    }
}
